package com.chen.base.property;

import com.chen.root.enums.RejectedEnum;
import lombok.Data;

/**
 * @Author: ChenJinLong
 * @DateTime: 2023/8/28 11:27
 **/
@Data
public class ThreadPool {

    /**
     * 线程池名称
     */
    private String name;

    /**
     * 核心线程数
     */
    private Integer corePoolSize;

    /**
     * 最大线程数
     */
    private Integer maxPoolSize;

    /**
     * 队列容量
     */
    private Integer queueCapacity;

    /**
     * 空闲线程存活时间，单位：秒
     */
    private Integer keepAliveSeconds;

    /**
     * 拒绝策略
     * 详情参考 {@link RejectedEnum}
     */
    private Integer refuseStrategy;

    /**
     * 线程池关闭时是否等待运行中的任务执行完
     *        true-等待执行完
     * 默认值: false-线程池关闭时立即停止所有任务
     */
    private Boolean isWait;
}
